PB Version:,v4.01,Nokia Like IR Keyboard,,,,,,,,,,,,,,,,,"PCode 2,2,0"
Remote:,S3C8+ (New),None,device,sub-dev,parm1,parm2,parm3,parm4,parm5,parm6,,,,,REMOTE,S3C8+,,102 BYTES,3F 97 11 8B 15 00 00 58 00 74 00 58 00 C6 00 C5 00 74 00 58 31 18 00 58 01 70 F6 FF 23 46 04 80 8D FF 23 1C 1A F6 01 4C 38 03 5C 02 F6 FF 48 38 04 5C 04 F6 FF 48 1C 1E F6 01 4C C6 F8 FE 08 F6 01 58 F6 01 0A 7B DC AF 1C 12 F6 01 4C 90 C3 90 C3 48 C3 56
Protocol ID:,01 FF,dev2,,,,,,,,,,FF00,3F 97,,DB,"3Fh,97h",;36.697 kHz 29.816%,,C4 03 4E 8D FF 61 C6 F8 00 58 F6 01 58 4A F7 5A E3 AF
Frequency (Khz):,36.036,dev3,,,,,,,,,,FF02,11,,DB,11h,";2 dev, 1 cmd",,"PCode 6,1,0"
Duty Cycle %:,32.432,dev4,,,,,,,,,,FF03,8B 15,,JR,start,,,20 17 24 4B 11 87 C4 80 04 04 08 00 52 00 8B 00 00 00 52 33 88 00 CF 00 8B 6E 12 B2 CD FF 5F 6E 09 56 CD FF 92 24 0B 45 13 88 CD FF 74 3B 56 F2 20 EA 1E 61 CC FF 5F
Signal Style:,LSB-Comp,Notes:,,,,,,,,,,FF05,00,,DB,00h,;pf0: 00000000=dev-cmd,,
Signal Structure:,dev-cmd,,,,,,,,,,,FF06,00,,DB,00h,;pd00: DevBits1=0,,
[Fixed] Device Bytes:,1,,,,,,,,,,,FF07,58,,DB,58h,;pd01: CmdBits1=88,,
Bits/Dev:,4,,,,,,,,,,,FF08,00 74,,DW,0074h,;pd02/03: 1-burst on=232 uS,,
Bits/Dev2:,0,,,,,,,,,,,FF0A,00 58,,DW,0058h,;pd04/05: 1-burst off=216 uS,,
Dev Bit Doubling:,None,,,,,,,,,,,FF0C,00 C6,,DW,00C6h,;pd06/07: 0-burst on=396 uS,,
[Variable] Cmd Bytes:,1,,,,,,,,,,,FF0E,00 C5,,DW,00C5h,;pd08/09: 0-burst off=434 uS,,
Bits/Cmd:,8,,,,,,,,,,,FF10,00 74,,DW,0074h,;pd0A/0B: Leadout off=232 uS,,
Bits/Cmd2:,,,,,,,,,,,,FF12,00 58,,DW,0058h,;pd0C/0D: Leadin on=176 uS,,
Cmd Bit Doubling:,None,,,,,,,,,,,FF14,31 18,,DW,3118h,;pd0E/0F: Leadin off= Leadout time off,,
Repeat Value:,18,,,,,,,,,,,FF16,00,,DB,00h,;pd10: DevBits2=0,,
Repeat Type:,Forced,,,,,,,,,,,FF17,58,,DB,58h,;pd11: Repeat=88
Repeat When Held:,No,,,,,,,,,,,FF18,01,,DB,01h,;pd12: CmdBits2=1
Check Byte:,None,,,,,,,,,,,FF19,70,,DB,70h,;pd13: 
Bytes Checked:,0,,,,,,,,,,,,,,,,
['1' Burst] Time - ON:,164,,,,,,,,,,,FF1A,F6 FF 23,start:,call,send,;send data stream
OFF:,278,,,,,,,,,,,,,,,,; *** break stream ***
['0' Burst] Time - ON:,,,,,,,,,,,,FF1D,46 04 80,,OR,"DCBUF+1,#80h",;toggle the break bit
OFF:,164,,,,,,,,,,,FF20,8D FF 23,,JP,send,; send and exit
Xmit '0' Reversed:,No,,,,,,,,,,,,,,,,
[Lead-In] Style:,Same every frame,,,,,,,,,,,,,,,,; *** send leadin pair ***
Burst Mid-Frame:,No,,,,,,,,,,,FF23,1C 1A,send:,LD,"W1,#pd08",; point to leadout off time 1Ah
After # of bits:,,,,,,,,,,,,FF25,F6 01 4C,,CALL,014Ch,;send IR burst on/off using pointer
[Lead-In] Time - ON:,414,,,,,,,,,,,,,,,,; *** send fixed data ***
OFF:,278,,,,,,,,,,,FF28,38 03,,LD,"W3,DCBUF",;load fixed data
[Lead-Out] Style:,"2 = [OneOn, -LO]",,,,,,,,,,,FF2A,5C 02,,LD,"W5,#02h",;2 pairs
OFF Time:,,,,,,,,,,,,FF2C,F6 FF 48,,CALL,data,;process fixed data
OFF as Total:,No,,,,,,,,,,,,,,,,; *** send variable data ***
Alt [Lead-Out] Time:,,,,,,,,,,,,FF2F,38 04,,LD,"W3,DCBUF+1",;load command data
Use Alt [Lead-Out]:,No,,,,,,,,,,,FF31,5C 04,,LD,"W5,#04h",;4 pairs
Alt Freq (Khz):,,,,,,,,,,,,FF33,F6 FF 48,,CALL,data,;process command byte
Alt Duty %:,,,,,,,,,,,,,,,,,; *** send leadout pair ***
Toggle Bit:,,,,,,,,,,,,FF36,1C 1E,,LD,"W1,#pd0c",;was 12h pd00
Vector Offset:,,,,,,,,,,,,FF38,F6 01 4C,,CALL,014Ch,;send IR burst on/off using pointer
Data Offset:,,,,,,,,,,,,FF3B,C6 F8 FE 08,,LDW,"RRF8,#fe08h",;amount of time to wait
UseAsmPCode:,Yes,,,,,,,,,,,FF3F,F6 01 58,,CALL,0158h,;send IR space (off) period per register
,,,,,,,,,,,,,,,,,; *** check for repeats ***
,,,,,,,,,,,,FF42,F6 01 0A,,CALL,010Ah,;check for key still held
,,,,,,,,,,,,FF45,7B DC,,JRC,send,;resend
,,,,,,,,,,,,FF47,AF,,ret,,
,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,FF48,1C 12,data:,LD,"W1,#pd00",; point to pd00
,,,,,,,,,,,,FF4A,F6 01 4C,,CALL,014Ch,; send base signal
,,,,,,,,,,,,FF4D,90 C3,Processbt,RL,RC3,; check for how many 
,,,,,,,,,,,,FF4F,90 C3,,RL,RC3,
,,,,,,,,,,,,FF51,48 C3,,ld ,"w4, rc3",; will have 
,,,,,,,,,,,,FF53,56 C4 03,,and,"w4, #03h",; store how many 
,,,,,,,,,,,,FF56,4E,,inc,w4,
,,,,,,,,,,,,FF57,8D FF 61,,jp,dbit,
,,,,,,,,,,,,FF5A,C6 F8 00 58,Loop2,LDW,"RRF8,#0058h",; add 176us of quite time
,,,,,,,,,,,,FF5E,F6 01 58,,CALL,0158h,; delay
,,,,,,,,,,,,FF61,4A F7,dbit,djnz,"w4, Loop2",; check for more space
,,,,,,,,,,,,FF63,5A E3,,djnz,"w5, data",; check for more pairs
,,,,,,,,,,,,FF65,AF,,ret,,



,,,,,,,,,,,,,,,,,; this alternate way makes use of the 
,,,,,,,,,,,,,,,,,; different pairs specified in the protocol
,,,,,,,,,,,;,,,LFF44:,BTJRT,"LFF5A,W3.7",; this is 15 bytes bigger than
,,,,,,,,,,,;,,,,BTJRT,"LFF52,W3.6",; the file that we produced.
,,,,,,,,,,,;,,,,LD,"W1,#pd00",
,,,,,,,,,,,;,,,,CALL,014Ch,
,,,,,,,,,,,;,,,,JP,LFF6D,
,,,,,,,,,,,;,,,LFF52:,LD,"W1,#pd04",
,,,,,,,,,,,;,,,,CALL,014Ch,
,,,,,,,,,,,;,,,,JP,LFF6D,
,,,,,,,,,,,;,,,LFF5A:,BTJRT,"LFF65,W3.6",
,,,,,,,,,,,;,,,,LD,"W1,#pd0c",
,,,,,,,,,,,;,,,,CALL,014Ch,
,,,,,,,,,,,;,,,,JP,LFF6D,
,,,,,,,,,,,;,,,LFF65:,LD,"W1,#pd10",
,,,,,,,,,,,;,,,,CALL,014Ch,
,,,,,,,,,,,;,,,,JP,LFF6D,
,,,,,,,,,,,;,,,LFF6D:,RL,RC3,
,,,,,,,,,,,;,,,,RL,RC3,,
,,,,,,,,,,,;,,,,DJNZ,"W5,LFF44",,
,,,,,,,,,,,;,,,LFF73:,RET,,,



,,,,,,,,,,,,,,,REMOTE,HCS08,,55 BYTES
,,,,,,,,,,,,0100,20 17,,BRA,start,,

,,,,,,,,,,,,0102,24 4B,,DB ,"$24,$4B",; 36.036 kHz 32.43% duty cycle,
,,,,,,,,,,,,0104,11,,DB ,11H,"; 1 Dev, 1 Cmd",
,,,,,,,,,,,,0105,87,,DB ,87H,; pf0: 10000111,
,,,,,,,,,,,,0106,C4,,DB ,C4H,; pf1: 11000100,
,,,,,,,,,,,,0107,80,,DB ,80H,; pf2: 10000000,
,,,,,,,,,,,,0108,04,,DB ,4H,; pf3: 00000100,
,,,,,,,,,,,,0109,04,,DB ,4H,; pd00: DevBits1=8,
,,,,,,,,,,,,010A,08,,DB ,8H,; pd01: CmdBits1=8
,,,,,,,,,,,,010B,00 52,,DW,0052H,; pd02/03: 1-Burst On 164 uS
,,,,,,,,,,,,010D,00 8B,,DW,$008B,; pd04/05: 1-Burst Off 278 uS
,,,,,,,,,,,,010F,00 00,,DW,0,; pd06/07: 0-Burst On 0 uS
,,,,,,,,,,,,0111,00 52,,DW,0052H,; pd08/09: 0-Burst Off 164 uS
,,,,,,,,,,,,0113,33 88,,DW,3388H,; pd0A/0B: Leadout Off 0 uS
,,,,,,,,,,,,0115,00 CF,,DW,$00CF,; pd0C/0D: Leadin On 414 uS
,,,,,,,,,,,,0117,00 8B,,DW,$008B,; pd0E/0D: Leadin Off 278 uS

,,,,,,,,,,,,0119,6E 12 B2,start:,MOV,"#$12,$B2",; set flags to tell engine this is a base 4 code


,,,,,,,,,,,,011C,CD FF 5F,loop:,JSR,XMITIR,;v_ir_GEN
,,,,,,,,,,,,011F,6E 09 56,,MOV,"#$09,$56",; loop counter
,,,,,,,,,,,,0122,CD FF 92,delay:,JSR,$FF92,;repeat/key-down check 129000us
,,,,,,,,,,,,0125,24 0B,,BCC,exit,; key let up
,,,,,,,,,,,,0127,45 13 88,,LDHX,#$1388,; delayed time
,,,,,,,,,,,,012A,CD FF 74,,JSR,$FF74,;send IR space (off) period per HX register
,,,,,,,,,,,,012D,3B 56 F2,,DBNZ,"$56,delay",; repeat delay
,,,,,,,,,,,,0130,20 EA,,BRA,loop,
,,,,,,,,,,,,0132,1E 61,exit:,bset,"7, dcbuf+1",;set the key up bit
,,,,,,,,,,,,0134,CC FF 5F,,jmp,xmitir,;send the final frame
